<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <ul class="process">
      <li class="finished">
        <div class="line"></div>
        <div class="circle">
          <div class="num"></div>
        </div>
        <div class="text"></div>
      </li>
      <li class="finished">
        <div class="line"></div>
        <div class="circle">
          <div class="num"></div>
        </div>
        <div class="text"></div>
      </li>
      <li>
        <div class="line"></div>
        <div class="circle">
          <div class="num"></div>
        </div>
        <div class="text"></div>
      </li>
      <li>
        <div class="line"></div>
        <div class="circle">
          <div class="num"></div>
        </div>
        <div class="text"></div>
      </li>
    </ul>
  </body>
  <style>
    body {
      counter-reset: process;
    }

    .process {
      display: flex;
      list-style: none;
      width: 100%;
      padding: 0;
    }

    .process li {
      counter-increment: process;
      flex-grow: 1;
      position: relative;
    }

    .process li .circle {
      width: 40px;
      height: 40px;
      border-radius: 50%;
      background-color: #bcbcbc;
      display: flex;
      align-items: center;
      justify-content: center;
    }

    .process li .circle .num {
      width: 32px;
      height: 32px;
      border-radius: 50%;
      line-height: 32px;
      text-align: center;
      color: #ffffff;
    }

    .process .line {
      position: absolute;
      top: 20px;
      left: 0;
      width: 100%;
      height: 2px;
      background-color: #bcbcbc;
      z-index: -1;
    }

    .process li:last-child .line {
      display: none;
    }

    .process li:last-child {
      flex-grow: 0;
    }

    .process li .circle .num::before {
      content: counter(process);
    }
    .process li .text::before {
      content: "第" counter(process) "步";
    }

    .process li.finished .circle {
      background-color: #00bc9b;
    }

    .process li.finished .num {
      border: 1px solid #ffffff;
    }

    .process li.finished .line {
      background-color: #00bc9b;
    }
  </style>
</html>
